# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

if CONFIG['OS_TARGET'] != 'WINNT':
    SOURCES += [
        'buffered_stun_socket_unittest.cpp',
        'ice_unittest.cpp',
        'multi_tcp_socket_unittest.cpp',
        'nrappkit_unittest.cpp',
        'proxy_tunnel_socket_unittest.cpp',
        'rlogconnector_unittest.cpp',
        'runnable_utils_unittest.cpp',
        'simpletokenbucket_unittest.cpp',
        'sockettransportservice_unittest.cpp',
        'stunserver.cpp',
        'test_nr_socket_unittest.cpp',
        'TestSyncRunnable.cpp',
        'transport_unittests.cpp',
        'turn_unittest.cpp',
    ]

    if CONFIG['MOZ_SCTP']:
        SOURCES += [
            'sctp_unittest.cpp',
        ]


for var in ('HAVE_STRDUP', 'NR_SOCKET_IS_VOID_PTR', 'SCTP_DEBUG', 'INET'):
    DEFINES[var] = True

if CONFIG['OS_TARGET'] == 'Android':
    DEFINES['LINUX'] = True
    DEFINES['ANDROID'] = True
    LOCAL_INCLUDES += [
        '/media/mtransport/third_party/nrappkit/src/port/android/include',
    ]
else:
    DEFINES['INET6'] = True

if CONFIG['OS_TARGET'] == 'Linux':
    DEFINES['LINUX'] = True
    LOCAL_INCLUDES += [
        '/media/mtransport/third_party/nrappkit/src/port/linux/include',
    ]

if CONFIG['OS_TARGET'] == 'Darwin':
    LOCAL_INCLUDES += [
        '/media/mtransport/third_party/nrappkit/src/port/darwin/include',
    ]

if CONFIG['OS_TARGET'] in ('DragonFly', 'FreeBSD', 'NetBSD', 'OpenBSD'):
    if CONFIG['OS_TARGET'] == 'Darwin':
        DEFINES['DARWIN'] = True
    else:
        DEFINES['BSD'] = True
    LOCAL_INCLUDES += [
        '/media/mtransport/third_party/nrappkit/src/port/darwin/include',
    ]

# SCTP DEFINES
if CONFIG['OS_TARGET'] == 'WINNT':
    DEFINES['WIN'] = True
    # for stun.h
    DEFINES['WIN32'] = True
    DEFINES['__Userspace_os_Windows'] = 1
else:
    # Works for Darwin, Linux, Android. Probably doesn't work for others.
    DEFINES['__Userspace_os_%s' % CONFIG['OS_TARGET']] = 1

if CONFIG['OS_TARGET'] in ('Darwin', 'Android'):
    DEFINES['GTEST_USE_OWN_TR1_TUPLE'] = 1

LOCAL_INCLUDES += [
    '/media/mtransport/',
    '/media/mtransport/third_party/',
    '/media/mtransport/third_party/nICEr/src/crypto',
    '/media/mtransport/third_party/nICEr/src/ice',
    '/media/mtransport/third_party/nICEr/src/net',
    '/media/mtransport/third_party/nICEr/src/stun',
    '/media/mtransport/third_party/nICEr/src/util',
    '/media/mtransport/third_party/nrappkit/src/event',
    '/media/mtransport/third_party/nrappkit/src/log',
    '/media/mtransport/third_party/nrappkit/src/plugin',
    '/media/mtransport/third_party/nrappkit/src/port/generic/include',
    '/media/mtransport/third_party/nrappkit/src/registry',
    '/media/mtransport/third_party/nrappkit/src/share',
    '/media/mtransport/third_party/nrappkit/src/stats',
    '/media/mtransport/third_party/nrappkit/src/util/',
    '/media/mtransport/third_party/nrappkit/src/util/libekr',
    '/netwerk/sctp/src/',
    '/xpcom/tests/'
]

FINAL_LIBRARY = 'xul-gtest'

if CONFIG['GNU_CXX']:
    CXXFLAGS += ['-Wno-error=shadow']
